/**
 * Created with IntelliJ IDEA.
 * Description:一个数组 nums和一个值 val，原地 移除所有数值等于val的元素，并返回移除后数组的新长度。
 * 不要使用额外的数组空间，你必须仅使用 O(1) 额外空间并 原地 修改输入数组。
 * User: xwl
 * Date: 2023-05-05
 * Time: 20:44
 */
public class Test1 {
    public int removeElement(int[] nums, int val) {
        // 定义俩个指针分别指向数组首尾
        int left = 0;
        int right = nums.length;
        // 遍历实现
        while (left < right) {
            if (nums[left] == val) {
                nums[left] = nums[right - 1];
                right--;
            } else {
                left++;
            }
        }
        return left;
    }
}
